テーマ:リストを配列で実現した場合の特徴
正解はこちら
解答:ア
[基礎知識・用語のまとめ]
リスト・・・「関連する要素(データ)などを一定の順序にならべたもの」です。プログラムでリストを実現する方法には「配列に要素を連続して格納する方法」と「要素と次の要素へのポインタを用いる方法」があり、この問題では、それぞれの特徴が問われています。
[解法]
リストをポインタで実現する場合には、動的に確保した領域を使うのに対し、配列で実現する場合は、あらかじめ一定の要素数の領域を確保しておき、動的な拡張は行いません。このため、配列の場合は、リストの最大個数に応じた要素数の領域を確保することが多く、同時に実際には使用されない領域が発生する可能性があるので、選択肢「ア」が適切な記述となります。
その他の選択肢は、以下の通りです。
イ→配列の場合、要素位置がわかれば、その位置に対応する添字の値によって要素を直接参照することができます。「先頭から順番に要素をたどっていく」のは配列で実現した場合の特徴ではありません。
ウ→「次の要素を指し示すための領域」とは、ポインタの値を格納するための領域のことであるため、ポインタで実現した場合の特徴を書いています。
エ→要素をリストに挿入したり削除したりする場合、リスト構造では、挿入・削除位置に来るまでポインタをたどる必要があり、配列では、挿入位置以降にある要素や削除位置より後ろにある要素を全てずらす必要があります。どちらの場合も要素数に比例した時間が必要になります。
[参考]
リスト構造はチェーン構造と呼ばれることがある、、、らしい。
利用させていただきました素材へのリンク
うさちゃこちゃんねる様 https://www.youtube.com/channel/UCQcDdg4W6r5OfcB1JTcpABw
ここまで読んでくれてありがとう!!
感謝!
コメント